package com.mf.service.authority;


import com.mf.domain.authority.UserInfo;
import com.mf.service.framework.IService;

import javax.servlet.http.HttpServletRequest;
import java.util.Map;

/**
 * 用户信息Service层接口类
 * User: zhaoming
 * DateTime: 2016-07-14
 * To change this template use File | Settings | File Templates.
 **/
public interface UserInfoService extends IService<UserInfo> {

    /**
     * 新增用户信息
     * @param request
     * @param userInfo 用户信息Domain
     */
    boolean insert(HttpServletRequest request, UserInfo userInfo);

    /**
     * 修改用户信息
     * @param request
     * @param userInfo 用户信息Domain
     */
    boolean updateByPrimaryKey(HttpServletRequest request, UserInfo userInfo);

    /**
     * 根据主键删除用户信息
     * @param userInfo 用户信息Domain
     */
    boolean deleteByPrimaryKey(UserInfo userInfo);

    /**
     * 根据主键查询用户信息
     * @param userInfo 用户信息Domain
     * @return 用户信息
     */
    UserInfo selectByPrimaryKey(UserInfo userInfo);

    /**
     * 密码变更
     * @param oldPwd 原始密码
     * @param newPwd 新密码
     */
    UserInfo changePassword(String oldPwd, String newPwd);

    /**
     * 检查重复数据
     * @return 验证结果
     */
    Map<String, Object> checkRepeat(UserInfo userInfo);
}
